/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package jps.ast;

import jps.Interpreter.ASTVisitor;

/**
 *
 * @author calyJa
 */
public class Expression {

    public void accept(ASTVisitor visitor) {
        
		if (this instanceof DotExpression) {
			visitor.visitDotExpression((DotExpression) this);
		} else if (this instanceof WhereExpression) {
			visitor.visitWhereExpression((WhereExpression) this);
		} else if (this instanceof EqualityExpression) {
			visitor.visitEqualsExpression((EqualityExpression) this);
		} else if (this instanceof GreaterThanExpression) {
			visitor.visitGreaterThanExpression((GreaterThanExpression) this);
		} else if (this instanceof PlusExpression) {
			visitor.visitPlusExpression((PlusExpression) this);
		} else if (this instanceof MinusExpression) {
			visitor.visitMinusExpression((MinusExpression) this);
		} else if (this instanceof MultiplicationExpression) {
			visitor.visitMultiplyExpression((MultiplicationExpression) this);
		} else if (this instanceof DivisionExpression) {
			visitor.visitDivisionExpression((DivisionExpression) this);
		} else if (this instanceof AndExpression) {
			visitor.visitAndExpression((AndExpression) this);
		} else if (this instanceof OrExpression) {
			visitor.visitOrExpression((OrExpression) this);
		} else if (this instanceof UnionExpression) {
			visitor.visitUnionExpression((UnionExpression) this);
		} else if (this instanceof GroupAsExpression) {
			visitor.visitGroupasExpression((GroupAsExpression) this);
		} else if (this instanceof UnaryExpression) {
			visitor.visitUnaryExpression((UnaryExpression) this);
		} else if (this instanceof NameExpression) {
			visitor.visitNameExpression((NameExpression) this);
		} else if (this instanceof TerminalExpression) {
			
		}

    }
}